This invention relates to a method of color selection for display or printing of electronic color images. In particular, this invention relates to the conversion and storage of electrical images suitable for display on a color raster scan cathode ray tube (CRT) or for use in a color printer, such as an ink jet or other color graphic printer, for example, a laser scanning printer system.
Most color graphic systems require a large color palette. Generally, the more color variations a system can display or print, the better it is. Digital displays and printers currently available offer very dense displays or rasters, commonly 1,000 by 1,000 pixels. If each pixel is to be capable of displaying or storing any single discrete color of a palette, for example, one having 256 colors, there must be sufficient color memory available to store those colors. Assuming each color corresponds to the voltages on the three separate electron guns of a CRT or the controls of an ink jet, one for each primary color, three bytes of storage may be required for the color of each pixel. If three bytes is needed for each of a million pixels, a total of 3 megabytes of RAM is needed for solely color storage.
To reduce the memory needs and yet still provide adequate color gradations, halftone dot patterns, or color matrices, are used. If greatly magnified, these matrices look like discrete dot patterns, but will look to a viewer like the desired palette color when viewed from normal viewing distance.
Most prior art halftone or "dithering" techniques have used halftone matrices having certain pixels in the matrix turned on and certain pixels turned off. One example of such a system is described in U.S. Pat. No. 4,308,553 which issued on Dec. 29, 1981. More recent advances in halftone color printing and display have not only turned pixels on and off, but also have varied the color intensity of each pixel. Such a system is described in U.S. Pat. No. 4,412,225 which issued on Oct. 25, 1983. The halftone matrix technique used in this patent, as shown in FIGS. 7A and 7B , starts each color at a different corner of the matrix and increases the amount of that color, both by increasing the intensity of each pixel of the matrix and by increasing the number of cells of the matrix used for that color, in a growth pattern from the starting corner diagonally across the matrix until the matrix is saturated.
The problem with this type of a spreading algorithm is that it will produce an intensity imbalance even when viewed from a distance. Moreover, this system, with an intensity variation of 0 to 7, using a 3.times.3 matrix, requires at least over ten bytes of color memory for each matrix. For a lK.times.1K display, greater than a megabyte of memory would be necessary.
It would thus be desirable to have a color display system which uses substantially less memory, but still provides as good or better color and intensity uniformity over the entire display or raster.